package com.ruoyi.project.module.item.service;

import java.util.List;

import com.crawler.util.BigDecimalUtil;
import com.ruoyi.project.module.Job.CrawlItem;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.project.module.item.mapper.ItemMapper;
import com.ruoyi.project.module.item.domain.Item;
import com.ruoyi.project.module.item.service.IItemService;
import com.ruoyi.common.support.Convert;

/**
 * 商品 服务层实现
 *
 * @author ruoyi
 * @date 2018-08-06
 */
@Service
public class ItemServiceImpl implements IItemService {
    @Autowired
    private ItemMapper itemMapper;

    /**
     * 查询商品信息
     *
     * @param itemId 商品ID
     * @return 商品信息
     */
    @Override
    public Item selectItemById(Integer itemId) {
        return itemMapper.selectItemById(itemId);
    }

    /**
     * 查询商品列表
     *
     * @param item 商品信息
     * @return 商品集合
     */
    @Override
    public List<Item> selectItemList(Item item) {
        return itemMapper.selectItemList(item);
    }

    /**
     * 新增商品
     *
     * @param item 商品信息
     * @return 结果
     */
    @Override
    public int insertItem(Item item) {
        return itemMapper.insertItem(item);
    }

    /**
     * 修改商品
     *
     * @param item 商品信息
     * @return 结果
     */
    @Override
    public int updateItem(Item item) {
        return itemMapper.updateItem(item);
    }

    /**
     * 删除商品对象
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteItemByIds(String ids) {
        return itemMapper.deleteItemByIds(Convert.toStrArray(ids));
    }

    /**
     * @Author lcx
     * @Date 2018/8/6 16:11
     * 插入爬取到的商品信息
     */
    @Override
    public int insertItemAsCrawlItem(List list) {

        List<CrawlItem.CrawlItemPageVo> crawlItemPageVoList = list;

        for (int i=0; i<crawlItemPageVoList.size(); i++) {
            List<String> itemNameList = crawlItemPageVoList.get(i).getItemNameList_h6_itemTitle();
            List<String> itemHrefList = crawlItemPageVoList.get(i).getItemHrefList_a_itemLink_block();
            List<String> itemPriceList = crawlItemPageVoList.get(i).getItemPriceList_span_itemPrice();
            List<String> eanList1 = crawlItemPageVoList.get(i).getEanList_a_img_link();
            List<String> eanList2 = crawlItemPageVoList.get(i).getEanList_div_column_block();


            for (int j=0; j<itemNameList.size(); j++){
                Item item = new Item();
                item.setItemName(itemNameList.get(j));
                item.setItemHref(itemHrefList.get(j));
                item.setItemPrice(itemPriceList.get(j));
                /*if ("null".equals(eanList1.get(i))){
                    item.setItemEan(eanList2.get(i));
                } else {
                    item.setItemEan(eanList1.get(i));

                }*/
                itemMapper.insertItem(item);
            }

        }

        return 0;
    }

}
